﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace GestioneStatisticheVendita
{
    class Program
    {
        static void Main(string[] args)
        {
            /*
             * Prodotto con codice (num random compreso ra 1 a 10000),Prodoti confezzionati con quantità ( num random tra 1 e 10) e un prezzo
             * Unitario di 0.30 a confezione,Prodotti non COnfezzioni con peso ( da 1 a 10) prezzo di 1,50Kg
             * menù:
             * 1: vendita confezzionati
             * 2: vendita non confezzionati
             * 3: statistiche di vendita
             * record al file vendite.dat ogni volta che  vendo qualcosa 
             * record: nome,    tipo,   pos,    lunghezza,  descrizione
             *         Codice    S       0      5           Codice prodotto
             *         Tipo      C      5       1            Tipo prodotto
             *         Quantità  I      6       3           Quantità prodotto
             *         Peso     I       9       2             Peso
             *         Importo  D       11      10              Importo
            */
            // c'e il record = c1+c2+c3
            try
            {
                GestioneFile.Makedirectory();
                int scelta = 0;
                int scelta1 = 0;
                List<Prodotto> prodotto = new List<Prodotto>();
                do
                {
                    Console.Clear();
                    Console.WriteLine("0.esci\n1.aggiungi campo al file\n2.leggi daa file");
                    scelta = Convert.ToInt32(Console.ReadLine());
                    switch (scelta)
                    {
                        case 0:
                            Console.WriteLine("Arrivederci e lasciate la mancia");
                            Console.ReadKey();
                            break;
                        case 1:
                            do
                            {
                                Console.Clear();
                                Console.WriteLine("0.esci\n1.inserisci prodotti confezzionati\n2. inserisci prodotti non confezzionati");
                                scelta1 = Convert.ToInt32(Console.ReadLine());
                                switch (scelta1)
                                {
                                    case 0:
                                        break;
                                    case 1:
                                        GestioneFile.Salva_Dati(new ProdottiConfezzionati(IODati.Codice(), IODati.Quantità(), IODati.Prezzo(), IODati.Peso()));
                                        break;
                                    case 2:
                                        GestioneFile.Salva_Dati(new ProdottiNonConfezzionati(IODati.Codice(), IODati.Quantità(), IODati.Prezzo(), IODati.Peso()));
                                        break;
                                    default:

                                        Console.WriteLine("valore non valido");
                                        Console.ReadKey();
                                        break;

                                }

                            } while (scelta1 != 0);
                            break;
                        case 2:
                            IODati.Stampa(GestioneFile.Leggi());
                            Console.ReadKey();
                            break;
                        default:
                            Console.WriteLine("valore non valido");
                            Console.ReadKey();
                            break;
                    }


                } while (scelta != 0);

            }catch(Exception e)
            {
                Console.WriteLine(e.Message);
                Console.ReadKey();
            }
        }
    }
}
